package com.xbongbong.paas.pojo.dto;

import com.xbongbong.paas.toolbox.wrap.BaseDTO;
import com.xbongbong.saas.enums.CallLogTypeEnum;
import lombok.Getter;
import lombok.Setter;
import lombok.ToString;

import javax.validation.constraints.NotNull;
import java.util.List;

@Setter
@Getter
@ToString
public class AddCommunicateDTO extends BaseDTO {

    /**
     * 话务中心平台，参考CallCenterTypeEnum
     */
    @NotNull(message = "{dto.msg.autoCommunicate.moduleType.NotNull}")
    private Integer moduleType;

    /**
     * 通话类型枚举信息
     */
    private CallLogTypeEnum callLogTypeEnum;

    /**
     * 对象id
     */
    @NotNull(message = "{dto.msg.autoCommunicate.refId.NotNull}")
    private Long refId;

    /**
     * 对象类型，参考XbbRefTypeEnum
     */
    @NotNull(message = "{dto.msg.autoCommunicate.refType.NotNull}")
    private Integer refType;

    /**
     * 响铃开始时间
     */
    @NotNull(message = "{dto.msg.autoCommunicate.startTime.NotNull}")
    private Integer startTime;

    /**
     * 坐席号码
     */
    private String agentPhoneNum;

    /**
     * 另一方号码
     */
    @NotNull(message = "{dto.msg.autoCommunicate.anotherPhoneNum.NotNull}")
    private String anotherPhoneNum;

//    /**
//     * 通话类型，0: 呼入（度言：INBOUND）；1：呼出（度言：OUTBOUND）
//     */
//    @NotNull(message = "{dto.msg.autoCommunicate.type.NotNull}")
//    @Min(value=0, message = "{dto.msg.autoCommunicate.type.Min}")
//    @Max(value=1, message = "{dto.msg.autoCommunicate.type.Max}")
//    private Integer type;

    /**
     * 通话时长，秒为单位
     */
    private Integer duration;

//    /**
//     * 通话结果，1: 成功；0：失败（度言字段 outcome 呼叫结果，SUCCESS: 成功；FAIL：失败）；2：需要同步
//     */
//    private Integer result;

    /*
     * 跟进内容
     */
    private String content;

    /**
     * 用于动态
     */
    private String dynamicContent;

    private List<Long> dataIdList;

    /**
     * 是否是自动生成  1是  0 不是
     */
    private Integer isAuto ;
}

